1. Field of the Invention
This invention relates to a method and apparatus for testing a computer system and, particularly, to a method and apparatus for testing a distributed computer system without suspending the system operation.
2. Description of the Prior Art
Recently, computer systems are more distributed, allowing the distribution of functions and prevention of load concentration, with the result of reduction in expenses of processing and communication. Distributed systems are advantageous in their enhanced reliability and expandability, but also impose a subject of how to service a system which is spatially distributed. Particularly, it is necessary for the maintenance staff to test whether or not each of the subsystems which constitute the total system is operating normally.
Conventional distributed systems have been incapable of testing the application program of each processor during the system operation. In this case, tests have been conducted by disconnecting a hardware or software resource to be tested from the active system or connecting additional test-oriented processor, memory and I/O unit to the system. In any case, it has not been possible to test a system in the same hardware configuration and same operating condition as that of the usual system operation. The latter case necessitates additional hardware devices. However, there is an intense demand for testing a system without suspending the operation.
In a distributed processing system in which a series of processings for one task are implemented distributively among processors connected on a common transmission line, there is proposed a system control method in which each distributed processor stores the program for carrying out the assigned part of the processings, fetches data used in the program execution over the transmission line, and commences the program execution upon readiness of the whole data, as disclosed for example in Japanese Patent Unexamined Publication No. 57-146361, entitled "DATA FLOW TYPE DISTRIBUTED PROCESSING SYSTEM". This method does not necessitate a control processor for controlling the overall system and enables a series of processings to be carried out distributively. However, it does not provide a method for test-running a program stored in each distributed processor during he on-line operation, therefore the method is insufficient for the system diagnostic and maintenance activities.
Some conventional computer systems incorporate means for collecting data produced as a result of program execution, however, it merely logs data on a time-series basis and is not satisfactory enough to analyze the test-run result using the collected resultant data.